/* 
 * File:   main.cpp
 * Author: Madam
 *
 * Created on September 30, 2013, 3:15 PM
 */

#include <cstdlib>
#include <fstream>
#include <iostream>

using namespace std;

/*
 * 
 */

/********************************
/** Parsovani argumentu: 
/********************************
 * 2 zpusoby : 
 * --- Otevrit soubour s pocatecnym stavem
 *     Vyzaduje: cestu k souboru
 * --- Generovani pocatecniho stavu na zaklade argumentu:  
 *     Vyzaduje: m,n (rozměry obdélníka, m>=n>=3)
 *               q (přirozené číslo, pocet zpetnych tahu M-m-n>=q>=1, kde M = m*n + 4m + 4n)
 *               x ((pocet nahodne rozmistenych kolecek na konci hry, přirozené číslo, 1q>x>=1)
 */
bool parse_arguments(int argc, char** argv) {
    if (argc == 3) {
        //pouze cesty k souboru
    } else if (argc == 7) {
        //kontrola vsech argumentu
        int m = atoi(argv[3]);
        int n = atoi(argv[4]);
        int q = atoi(argv[5]);
        int x = atoi(argv[6]);
        int M = m * n + 4 * m + 4 * n;

        if (m < n || n < 3) {
            cerr << "Rozmery obdelnika musi splnovat podminku: m>=n>=3" << endl;
        } else if ((M - m - n) < q || q < 1) {
            cerr << "q musi splnovat podminku : M-m-n>=q>=1, kde M = m*n + 4m + 4n" << endl;
        } else if (1 * q < x || x < 1) {
            cerr << "x musi splnovat podminku : 1q>x>=1" << endl;
        } else {
            cout << "OK" << endl;
        }
    } else {
        cout << argc << endl;
        cerr << "Pouziti: soubor_vstupni soubor_vystupni [m n q x]" << endl;
        int t;
        cin >> t;
        return EXIT_FAILURE;
    }

}

int main(int argc, char** argv) {
    if (parse_arguments(argc, argv)) {

    } else {
        //error
    }
    int t;
    cin >> t;
    return EXIT_SUCCESS;
}

